package br.ufrj.ppgi.greco.IntentWithStartActivityForResult;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity
{
	final int MY_SECOND_ACTIVITY = 1; //esse inteiro tem como funcionalidade identificar a minha segunda activity de forma única
	
	
	@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		
		Integer numero = 33;
		
		Log.d("MINHA_SAIDA","1° - Estou em MainActivity no método onCreate");
	
		setContentView(R.layout.main);
		
		Intent intent = new Intent(this,MySecondActivity.class); //criando uma Intent que para dizer ao Android para executar MySecondActivity, passando como parâmetro para ele a referência de MainActivity (this)
		
		intent.putExtra("NUMERO", numero); //adicionando um dado na Intent para ser levado para MySecondActivity com a chave de identificação NUMERO
		
		startActivityForResult(intent, this.MY_SECOND_ACTIVITY); // startActivityForResult faz o Android executar  MySecondeActivity e diz  que  espero que ela me retorne algo, o segundo parâmetro diz que estou identificando MySecondActivity com o número contido em SECOND_ACTIVITY 
	
	}
	
	
	@Override
	protected void onActivityResult(int requestCode,int resultCode, Intent data)
	{
		super.onActivityResult(requestCode, resultCode, data);
		Log.d("MINHA_SAIDA", "3° - Estou em MainActivity no método onActivityResult");
		
		if(requestCode == this.MY_SECOND_ACTIVITY) //conferindo se o resultado retornado veio de MySecondActivity
		{
			 if (resultCode == RESULT_OK) //se tudo ocorreu bem o inteiro retornado será o inteiro definido na váriável RESULT_OK (RESULT_OK entre outras, são constantes definidas na Classe Activity, devem ser usadas como padrão para testes de nossas aplicações)  
			 {
				 Log.d("MINHA_SAIDA", "O número que eu enviei é "+data.getStringExtra("RESULTADO"));
			 }
			 
		 }
		 
		
		
		
		
	}
	
	
	
	
	
}